home *** CD-ROM | disk | FTP | other *** search
- # Tk backend -- unfinished
-
- debug = 0
-
- from fmt import *
-
- class TkFormatter:
-
- def __init__(self, text):
- self.text = text # The text widget to draw in
- self.nospace = 1
- self.blanklines = 0
- self.font = ''
-
- # Methods called by htmllib.FormattingParser:
-
- def setfont(self, font):
- if 1 or debug: print "setfont(%s)" % `font`
- self.font = font
-
- def resetfont(self):
- if debug: print "resetfont()"
- self.font = ''
-
- def flush(self):
- if debug: print "flush()"
- self.needvspace(1)
-
- def setleftindent(self, n):
- if debug: print "setleftindent(%d)" % n
-
- def needvspace(self, n):
- if debug: print "needvspace(%d)" % n
- self.blanklines = max(n, self.blanklines)
- self.nospace = 1
-
- def addword(self, word, nspaces):
- if debug: print "addword(%s, %d)" % (`word`, nspaces)
- if self.nospace and not word:
- return
- if self.blanklines > 0:
- word = '\n'*self.blanklines + word
- self.blanklines = 0
- self.nospace = 0
- here = self.text.index('end')
- self.text.insert('end', word + nspaces*' ')
- if not self.font:
- self.tag_remo
-
- def setjust(self, c):
- if debug: print "setjust(%s)" % `c`
-
- def bgn_anchor(self):
- if debug: print "bgn_anchor()"
-
- def end_anchor(self):
- if debug: print "end_anchor()"
-
- def hrule(self):
- if debug: print "hrule()"
- self.flush()
- self.addword('_'*60, 0)
- self.flush()
-